Khi thực hiện các hoạt động lặp, chương trình kiểm tra một điều kiện. Với lệnh lặp:
for < biến đếm > := < giá trị đầu > to < giá trị cuối > do < câu lệnh >;
của Pascal, điều kiện cần phải kiểm tra là gì?
Câu 1: Khi thực hiện câu lệnh lặp for,to, do máy tính kiểm tra một điều kiện, điều kiện cần phải kiểm tra là gì?
Câu 2: Em hãy mô tả thuật toán và viết chương trình nhập vào một số tự nhiên n khác 0. Tìm tất cả các ước của n.
Câu 3: Em hãy mô tả thuật toán và viết chương trình nhập vào một số tự nhiên n khác 0. Đếm tất cả các ước của n.
Câu 4: Em hãy mô tả thuật toán và viết chương trình nhập vào một số tự nhiên n khác 0. Tính tổng tất cả các nước của n.
Câu 5: Em hãy mô tả thuật toán và viết chương trình nhập vào một số tự nhiên n khác 0. Tính tích tất cả các ước của n.
Câu 6: Em hãy mô tả thuật toán và viết chương trình nhập vào một số tự nhiên n khác 0. Tính tổng các số chẵn trong đoạn 1 đến n.
Câu 7: Em hãy mô tả thuật toán và viết chương trình nhập vào hai số tự nhiên a và b (a <> 0; b <> 0; a <= 0)
Câu 8: Em hãy mô tả thuật toán và viết chương trình nhập vào một số tự nhiên n khác 0. Kiểm tra xem n có là số nguyên tố hay không?
làm hộ mình nha
P/s: ở đây mình chỉ viết chương trình thôi, còn thuật toán bạn có thể suy ra từ chương trình nhé:
Câu 2:
uses crt;
var n,i:integer;
begin
clrscr;
write('Nhap n='); readln(n);
for i:=1 to n do
if n mod i=0 then write(i:4);
readln;
end.
Câu 3:
uses crt;
var n,i,dem:integer;
begin
clrscr;
write('Nhap n='); readln(n);
dem:=0;
for i:=1 to n do
if n mod i=0 then dem:=dem+1;
writeln('So uoc cua ',n,' la: ',dem);
readln;
end.
Câu 4:
uses crt;
var n,i,t:integer;
begin
clrscr;
write('Nhap n='); readln(n);
t:=0;
for i:=1 to n do
if n mod i=0 then t:=t+i;
writeln('Tong cac uoc cua ',n,' la: ',t);
readln;
end.
Câu 5:
uses crt;
var n,i:integer;
s:real;
begin
clrscr;
write('Nhap n='); readln(n);
s:=1;
for i:=1 to n do
if n mod i=0 then s:=s*i;
writeln('Tich cac uoc cua ',n,' la: ',s:4:2);
readln;
end.
Câu 6:
uses crt;
var n,i,t:integer;
begin
clrscr;
write('Nhap n='); readln(n);
t:=0;
for i:=1 to n do
if i mod 2=0 then t:=t+i;
writeln('Tong cac so chan trong khoang tu 1 den ',n,' la: ',t);
readln;
end.
Câu 8:
uses crt;
var n,i,kt:integer;
begin
clrscr;
write('Nhap n='); readln(n);
kt:=0;
for i:=2 to trunc(sqrt(n)) do
if n mod i=0 then kt:=1;
if (kt=0) and (n>1) then writeln(n,' la so nguyen to')
else writeln(n,' khong la so nguyen to');
readln;
end.
Bài tập 1:Khi thực hiện câu lệnh lặp for, to, do máy tính kiểm tra một điều kiện, điều kiện cần phảikiểm tra là gì?
* Tham khảo :
Khi thực hiện, ban đầu biến đếm sẽ nhận giá trị đầu, sau mỗi vòng lặp, biến đếm sẽ tự động tăng thêm một đơn vị cho đến khi bằng giá trị cuối.
Câu 4: Trong câu lệnh lặp: For (<Biến đếm>):=(<Giá trị đầu>) to (<Giá trị cuối>) do (<câu lệnh>); Khi thực hiện ban đầu Biến đếm nhận giá trị = Giá trị đầu, sau mỗi vòng lặp biến đếm tăng thêm:
A. 1 đơn vị B. 2 đơn vị C. 3 đơn vị D. 4 đơn vị
Câu 1: Biến đếm trong lệnh lặp For-do dùng để:
A. Thực hiện câu lệnh
B. Kiểm tra điều kiện
C. Đếm số lần lặp
D. Lặp
Cấu trúc lặp nào sau đây không được cho trước trong các nhóm lệnh của Scrath?
A. Lặp một khối lệnh với so lần định trước.
B. Lặp một khối lệnh vô hạn lần.
C. Lặp với điều kiện được kiểm tra trước khi thực hiện khối lệnh.
D. Lặp với điều kiện được kiểm tra sau khi thực hiện khối lệnh.
Chọn D. Lặp với điều kiện được kiểm tra sau khi thực hiện khối lệnh.
Câu 4: Trong câu lệnh lặp: For (Biến đếm):=(Giá trị đầu) to (Giá trị cuối) do (câu lệnh); Khi thực hiện ban đầu Biến đếm nhận giá trị = Giá trị đầu, sau mỗi vòng lặp biến đếm tăng thêm:
A. 1 đơn vị
B. 2 đơn vị
C. 3 đơn vị
D. 4 đơn vị
Câu 5: trong câu lệnh lặp với số lần xác định trước, <câu lệnh> được thực hiện bao nhiêu lần?
A. (<giá trị đầu> - <giá trị cuối>) lần.
B. (<giá trị cuối> - <giá trị đầu>) lần.
C. (<giá trị cuối> - <giá trị đầu> + 1) lần.
D. Khoảng 10 lần
Câu 6: Tìm giá trị S khi thực hiện đoạn chương trình sau đây
S:=0;
For i:=1 to 5 do S:= S+i;
A. S=0. B. S= 1. C. S=10. D. S=15.
Câu 7: Hãy cho biết kết quả của b trong đoạn chương trình sau đây.
a:=10; b:=5;
while a>=10 do
begin b:=b+a; a:=a-1; end;
A. b=5.
B. b=10.
C. b=15.
D. B=20.
Câu 8: Lúc nào thì câu lệnh lặp While..Do sẻ dùng lại?
A. <Điều kiện> có giá trị đúng.
B. < Điều kiện> có giá trị sai.
C. Các câu lệnh bên trong < câu lệnh> đã thực hiện xong.
D. Tất cả phương án trên đều sai.
Câu 9: Bạn Ngọc muốn in ra màn hình 5 chữ B và 5 chữ C trên màn hìnhbằng đoạn chương trình sau:
For i:=1 to 5 do
Writeln(‘B’); writeln(‘C’);
Theo em bạn Ngọc viết như thế nào
A. Đúng rồi
B. Phải đưa Writeln(‘B’); writeln(‘C’) vào trong cặp từ khóa Begin và End;
C. Phải đổi Writeln thành Write.
D. Phải đặt Writeln(‘B’); writeln(‘C’); trên hai dòng riêng biệt.
Câu 10: Việc đầu tiên câu lệnh While cần thực hiện là gì?
A. Thực hiện <câu lệnh> sau từ khóa Do.
B. Kiểm tra giá trị của <điều kiện>.
C. Thực hiện < câu lệnh > sau từ khóa Then.
D. Kiểm tra <câu lệnh>.
Câu 11: Kết quả của < điều kiện> trong câu lệnh While ..Do có giá trị gì?
A. Là 1 số nguyên.
B. Là 1 số thực.
C. Đúng hoặc sai.
D. Là 1 dãy kí tự.
Câu 12: Câu lệnh sau từ khóa Do trong câu lệnh While sẻ được thực hiện bao nhiêu lần?
A. 0 lần.
B. 1 lần
C. 2 lần
D. Tùy thuộc bài toán.
Câu 4:A
Câu 5: C
Câu 6: D
Câu 12: D
Câu 11: C
Câu 10: Việc đầu tiên mà câu lệnh While ... do cần thực hiện là gì?
A. Thực hiện < câu lệnh > sau từ khóa Do
B. Kiểm tra giá trị của < điều kiện >
C. Thực hiện câu lệnh sau từ khóa Then
D. Kiểm tra < câu lệnh >
Câu 11: Cho biết câu lệnh sau Do thực hiện mấy lần trong đoạn chương trình sau:
i := 5;
While i>=1 do i := i – 1;
A. 1 lần B. 2 lần C. 5 lần D. 6 lần
1. Câu lệnh lặp for <biến đếm>:==<giá trị đầu> to <giá trị cuối> do <câu lệnh>; có các từ khóa là:
A. for,to,do
B. <biến đếm>
C. <giá trị đầu>,<giá trị cuối>
D.<câu lệnh>
2. trong câu lệnh lặp for,<giá trị đầu> và <giá trị cuối> là các giá trị:
A. số nguyên
B. kiểu số thực
C. kiểu ký tự
D. kiểu xâu ký tự
Câu 11: Kiểu dữ liệu của biến đếm trong lệnh lặp For – do:
A. Cùng kiểu với giá trị đầu và giá trị cuối
B. Chỉ cần khác kiểu với giá trị đầu
C. Cùng kiểu với các biến trong câu lệnh
D. Không cần phải xác định kiểu dữ liệu
Câu 12: Hoạt động nào sau đây lặp với số lần lặp biết trước?
A. Giặt tới khi sạch
B. Học bài cho tới khi thuộc bài
C. Gọi điện tới khi có người nghe máy
D. Ngày đánh răng 2 lần
Câu 13: Chọn cú pháp câu lệnh lặp là:
A. for < biến đếm > : = < giá trị đầu > to < giá trị cuối > do < câu lệnh >;
B. for < biến đếm > := < giá trị cuối > to < giá trị đầu > do < câu lệnh >;
C. for < biến đếm > = < giá trị đầu > to < giá trị cuối >; do < câu lệnh >;
D. for < biến đếm > = < giá trị đầu > to < giá trị cuối > do < câu lệnh >;
Câu 14: Câu lệnh For..to..do kết thúc :
A. Khi biến đếm nhỏ hơn giá trị cuối
B. Khi biến đếm lớn hơn giá trị cuối
C. Khi biến đếm nhỏ hơn giá trị đầu
D. Khi biến đếm lớn hơn giá trị đầu
Câu 15: Cho các câu lệnh sau hãy chỉ ra câu lệnh đúng :
A. for i:=1 to 10; do x:=x+1;
B. for i:=1 to 10 do x:=x+1;
C. for i:=10 to 1 do x:=x+1;
D. for i =10 to 1 do x:=x+1;
Câu 16: Với ngôn ngữ lập trình Passcal câu lệnh lặp for i:=1 to 10 do x:=x+1; thì biến đếm i phải được khai báo là kiểu dữ liệu nào?
A. Integer
B. Real
C. String
D. Tất cả các kiểu trên đều được
Câu 17: Đoạn chương trình sau giải bài toán nào?
For I:=1 to M do
If (I mod 3 = 0) and (I mod 5 = 0) then
T := T + I;
A. Tổng các số chia hết cho 3 hoặc 5 trong phạm vi từ 1 đến M
B. Tổng các số chia hết cho 3 và 5 trong phạm vi từ 1 đến M
C. Tổng các số chia hết cho 3 trong phạm vi từ 1 đến M
D. Tổng các số chia hết cho 5 trong phạm vi từ 1 đến M
Câu 18: Xác định số vòng lặp cho bài toán: tính tổng các số nguyên từ 1 đến 100
A. 1
B. 100
C. 99
D. Tất cả đều sai
Câu 19:Trong lệnh lặp For – do:
A. Giá trị đầu phải nhỏ hơn giá trị cuối
B. Giá trị đầu phải nhỏ hơn hoặc bằng giá trị cuối
C. Giá trị đầu phải lớn hơn giá trị cuối
D. Giá trị đầu phải bằng giá trị cuối
Câu 20:Sau khi thực hiện đoạn chương trình sau:
S:=10;
For i:=1 to 4 do S:=S+i;
Giá trị của biến S bằng bao nhiêu?
A. 20
B. 14
C. 10
D. 0